Haste v20 - Underwater Light & Absorption Fix (development build)

Changes
- Reworked underwater shafts: screen-space rays remain when the sun is visible, with world-locked directional beams as a fallback when looking down or away from the sun.
- Increased underwater ray strength gradually by preset while retaining low sample counts for Hastefull.
- Replaced the constant blue brightness lift with distance-dependent channel absorption and darker underwater haze.
- Added Underwater Darkness control in Water & Reflections.
- Preserves emissive pixels and a small amount of brightness on well-lit nearby surfaces.
- Kept existing underwater caustics and rain splash systems intact.

Performance
- No new render targets or passes.
- Hastefull continues to use four screen-space ray samples; the world-locked fallback adds a small fixed math calculation without texture reads.
- The directional shaft pattern uses reconstructed positions and analytic waves; it does not add texture sampling.

Verification
- Built from Haste v19 Underwater Refresh.
- ZIP integrity and source structure checks are run at packaging time.
- Not compiled or launched in a live Minecraft + Sodium + Iris instance in this environment; in-game visual and FPS verification is still required.
